package com.celeritymq.session;

import java.io.Serializable;
import java.net.SocketAddress;

import javax.jms.BytesMessage;
import javax.jms.JMSException;
import javax.jms.MapMessage;
import javax.jms.Message;
import javax.jms.MessageListener;
import javax.jms.ObjectMessage;
import javax.jms.Session;
import javax.jms.StreamMessage;
import javax.jms.TextMessage;

import com.celeritymq.listeners.CelerityMessageListener;

public abstract class CeleritySession implements Session {
	protected SocketAddress clientAddress;
	private CelerityMessageListener messageListener;
	protected boolean transacted;
	protected int acknowledgeMode;

	protected CeleritySession(SocketAddress clientAddress) {
		this.clientAddress = clientAddress;
	}

	@Override
	public void close() throws JMSException {

	}

	@Override
	public void commit() throws JMSException {

	}

	@Override
	public BytesMessage createBytesMessage() throws JMSException {
		return null;
	}

	@Override
	public MapMessage createMapMessage() throws JMSException {
		return null;
	}

	@Override
	public Message createMessage() throws JMSException {
		return null;
	}

	@Override
	public ObjectMessage createObjectMessage() throws JMSException {
		return null;
	}

	@Override
	public ObjectMessage createObjectMessage(Serializable arg0) throws JMSException {
		return null;
	}

	@Override
	public StreamMessage createStreamMessage() throws JMSException {
		return null;
	}

	@Override
	public TextMessage createTextMessage() throws JMSException {
		return null;
	}

	@Override
	public TextMessage createTextMessage(String arg0) throws JMSException {
		return null;
	}

	@Override
	public MessageListener getMessageListener() throws JMSException {
		return messageListener;
	}

	@Override
	public boolean getTransacted() throws JMSException {
		return false;
	}

	@Override
	public void recover() throws JMSException {

	}

	@Override
	public void rollback() throws JMSException {

	}

	@Override
	public void run() {

	}

	@Override
	public void setMessageListener(MessageListener messageListener) throws JMSException {
		this.messageListener = (CelerityMessageListener) messageListener;
	}

}
